﻿namespace Zinnia.Lite.Injection
{
    /// <summary>
    /// 依赖注入接口
    /// </summary>
    public interface IDependency
    {
    }
    /// <summary>
    /// 单例依赖
    /// </summary>
    public interface ISingleDependency : IDependency
    {
    }
    /// <summary>
    /// 瞬态缓存
    /// </summary>
    public interface ITransientDependency : IDependency
    {
    }

    /// <summary>
    /// 工作单元模式依赖
    /// </summary>
    public interface IUnitOfWorkDependency : IDependency
    {

    }
    /// <summary>
    /// 生命周期域中依赖
    /// </summary>
    public interface IPerLifetimeScopeDependency : IDependency
    {
    }
    /// <summary>
    /// 在一个做标识的生命周期域中，每一个依赖或调用创建一个单一的共享的实例
    /// </summary>
    public interface IPerMatchingLifetimeScopeDependency : IDependency
    {
    }

}
